<!--
//	Copyright (c) 2008, x-port.net ltd.
//
//	All rights reserved.
//
//	Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
//
//	    * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
//	    * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
//	    * Neither the name of the x-port.net ltd. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
//
//	THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
//	"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
//	LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
//	A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
//	CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
//	EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
//	PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
//	PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
//	LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
//	NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
//	SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
//   Purpose: obsolete
//   $Id$
-->
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xforms="http://www.w3.org/2002/xforms/cr">
	<xsl:template match="xforms:input">
			<script>
				//<![CDATA[
				//interface UIHandler
				function put_value(val)
				{
					if(val != document.getElementById("control").value)
					{
						document.getElementById("control").value = val;
					}
				}

				function put_focus()
				{
					try {
						document.getElementById("control").focus();
					}
					catch(e) {
					}
				}

				function put_navindex(val)
				{
					document.getElementById("control").tabIndex = val;
				}
				// ]]>
			</script>

			<script>
				// <![CDATA[
				//internal helper methods
				function handleChangeEvent(val)
				{
					formControl.valueChanged(val);
				}
				
				function handleChangingEvent(val)
				{
					if(event.propertyName == 'value')
						formControl.valueChanging(val);
				}
				// ]]>
			</script>
			<input	class="value" 
					id='control' 
					type='text' 
					onfocusout="handleChangeEvent(this.value);"
					onpropertychange="handleChangingEvent(this.value)"
			/>
	</xsl:template>
	
	<xsl:template match="xforms:input[@schemaType = 'boolean']">
		<script>
			//<![CDATA[
			//interface UIHandler
			
			function put_value(val)
			{
				if(val == 'true') {
					document.getElementById("control").checked = true;
				} else if(val == 'false') {
					document.getElementById("control").checked = false;
				}
			}
			
			function put_focus()
			{
				try {
					document.getElementById("control").focus();
				}
				catch(e) {
				}
			}

			function put_navindex(val)
			{
				document.getElementById("control").tabIndex = val;
			}

			function get_value()
			{
				return document.getElementById("control").checked;
			}
			
			// ]]>
		</script>
		<script>
			// <![CDATA[
			//internal helper methods
			function handleBlurEvent(val)
			{
				formControl.valueChanged(val);
			}
			// ]]>
		</script>
		<input type="checkbox" class="value" id="control" 
			onpropertychange="handleBlurEvent(this.checked)"
		/>
	</xsl:template>
	
	<xsl:template match="xforms:textarea">
	<script>
		// <![CDATA[ interface UIHandler
		
		function put_value(val)
		{
			if(val != document.getElementById("control").value)
			{
				document.getElementById("control").value = val;
				document.documentElement.value=val;
			}
		}
	
		function put_focus()
		{
			try {
				document.getElementById("control").focus();
			}
			catch(e) {
			}
		}

		function put_navindex(val)
		{
			document.getElementById("control").tabIndex = val;
		}
		
		function put_accesskey(val)
		{
			document.getElementById("control").accessKey = val;
		}
		// ]]>
	</script>

	<script>
		// <![CDATA[
		//internal helper methods
		function handleChangeEvent(val)
		{
			formControl.valueChanged(val);
		}
		function handleChangingEvent(val)
		{
			if(event.propertyName == 'value')
				formControl.valueChanging(val);
		}
		// ]]>
	</script>
	<textarea class="value" 
			id='control' 
			type='text' 
			onblur="handleChangeEvent(this.value);"
			rows="5"
			onactivate="document.fireEvent('onactivate');"
			onpropertychange="handleChangingEvent(this.value)"
			></textarea>
	</xsl:template>
</xsl:stylesheet>
